/*
* @(#)DmsOperationConstant.java
*
* Copyright (c) 2003 DCIVision Ltd
* All rights reserved.
*
* This software is the confidential and proprietary information of DCIVision
* Ltd ("Confidential Information").  You shall not disclose such Confidential
* Information and shall use it only in accordance with the terms of the license
* agreement you entered into with DCIVision Ltd.
 */
package com.dcivision.dms;

import com.dcivision.framework.SystemParameterConstant;
import com.dcivision.framework.SystemParameterFactory;

/**
 DmsOperationConstant.java

 This class is to store all constants for DMS module

  @author          Zoe Shum
  @company         DCIVision Limited
  @creation date   01/08/2003
  @version         $Revision: 1.65.2.4 $
*/

public class DmsOperationConstant {

  public static final String REVISION = "$Revision: 1.65.2.4 $";

  private DmsOperationConstant() {
  }

  /****************************************************************************
   * The constant common used in the DMS module.
   ****************************************************************************/
  /** The constant name of attribute which storing the default document profile. */
  public final static String DMS_DEFAULT_PROFILE_SETTING = "DMS_DEF_PROFILE";
  
  /** The constant name of attribute which stores the dms document object */
  public final static String DMS_DOCUMENT_BEAN = "dmsDocument";

  /** The constant which used to define the root name of Personal Folder's. */
  public final static String DMS_PERSONAL_ROOT = "PERSONAL";
  public final static String DMS_PUBLIC_ROOT = "PUBLIC";
  public final static String DMS_ALL_ROOT = "ALL_ROOT";

  /** The constant which used to define the root name attribute. */
  public final static String DMS_ROOT = "ROOT";

  /** Document status type representing the Empty. */
  public static final String DMS_RECORD_EMPTY = "E";

  /** The constant which used to indicate the various methods of dmsDocument created in DMS. */
  public final static String DMS_CREATE_BY_SYSTEM = "S";
  public final static String DMS_CREATE_BY_EMAIL = "M";
  public final static String DMS_CREATE_BY_UPLOAD = "U";
  public final static String DMS_CREATE_BY_WORKFLOW = "W";

  /** The constant which used to define the root name attribute . */
  public final static String DMS_TOP_VERSION = "TOP";

  /** The constant which used on user defined field details . */
  public static String HIDDEN_DATETIME_FORMAT = SystemParameterFactory.getSystemParameter(SystemParameterConstant.DB_DATETIME_FORMAT);
  
 
 
  /** The operation constant which used to define the special document operation. */
  public final static String COPY_OPERATION = "DMS.COPY";
  public final static String COPY_MORE_OPERATION ="DMS.COPY_MORE";
  public final static String NO_STRUCTURE_COPY = "DMS.NO_STRUCTURE_COPY";
  public final static String COPY_STRUCTURE_ONLY = "DMS.COPY_STRUCTURE_ONLY";
  public final static String COPY_TOP_VERSION = "DMS.COPY_TOP_VERSION";
  public final static String COPY_ALL_VERSIONS = "DMS.COPY_ALL_VERSIONS";
  public final static String COPY_OPERATION_AS_OLD = "DMS.COPY_AS_OLD";
  public final static String COPY_OPERATION_AS_NEW = "DMS.COPY_AS_NEW";
  public final static String MOVE_OPERATION = "DMS.MOVE";
  public final static String COPY_MOVE_VIEW = "DMS.COPY_MOVE_VIEW";
  public final static String COPY_OPERATION_REFRASH = "DMS.COPY_OPERATION_REFRASH";  
  public final static String RENAME_OPERATION = "DMS.RENAME";
  public final static String RENAME_VIEW = "DMS.RENAME_VIEW";
  public final static String CREATE_EMPTY_FILE = "DMS.CREATE_EMTPY_FILE";
  public final static String CREATE_EMPTY_FILE_VIEW = "DMS.CREATE_EMTPY_FILE_VIEW";
  public final static String CREATE_COMPOUND_DOCUMENT = "DMS.CREATE_COMPOUND_DOCUMENT";
  public final static String CREATE_COMPOUND_DOCUMENT_VIEW = "DMS.CREATE_COMPOUND_DOCUMENT_VIEW";
  public final static String CREATE_NEW_RELATION ="DMS.CREATE_NEW_RELATION";
  public final static String SAVE_DEF_PROFILE_LIST = "DMS.SAVE_DEF_PROFILE_LIST";
  public final static String VIEW_PAPER_DOCUMENT_INFO="DMS.VIEW_PAPER_DOCUMENT_INFO";

  /** The constants which used to operate the document version in DMS. */
  public final static String CHECKIN_OPERATION = "DMS.CHECKIN";
  public final static String CHECKIN_MINOR = "DMS.MINOR";
  public final static String CHECKOUT_CHECK = "DMS.CHECKOUT_CHECK";
  public final static String CHECKOUT_OPERATION = "DMS.CHECKOUT";
  public final static String FORWARD_WITH_REQUEST = "DMS.FORWARD";
  public final static String FORWARD_WITH_REQUEST_PUBLIC = "DMS.FORWARD_PUBLIC";
  public final static String NO_UPDATE_CHECKIN = "DMS.NOUPDATE.CHECKIN";
  public final static String CREATE_NEW_CHECKIN = "DMS.NEW.CHECKIN";
  public final static String CREATE_MINOR_CHECKIN = "DMS.MINOR.CHECKIN";
  public final static String LIST_PERSONAL_PAGE = "DMS.LPERSONAL";
  public final static String LIST_PUBLIC_PAGE = "DMS.LPUBLIC";
  public final static String LIST_PERSONAL_HOME = "DMS.LHOME";
  public final static String LIST_EMPTY_DOCUMENT = "DMS.LEMPTY";
  public final static String LIST_SEARCH = "DMS.LSEARCH";
  public final static String LIST_BULK_SEARCH = "DMS.LBULK_SEARCH";
  public final static String LIST_KEYWORD_SEARCH = "DMS.LKEYWORD_SEARCH";
  public final static String LIST_COMPOUND_DOCUMENT ="DMS.LCOMPOUND";
  public final static String LIST_PAPER_DOCUMENT ="DMS.LPAPER";

  /** The constants which used for advance search operation */
  public final static String ATTR_SEARCH_OPERATION = "DMS.ATTR_SEARCH";
  public final static String ATTR_BULK_SEARCH_OPERATION = "DMS.ATTR_BULK_SEARCH";
  public final static String ATTR_EXPORT_OPERATION = "DMS.ATTR_EXPORT";
  public final static String RESULT_EXPORT_OPERATION = "DMS.RESULT_EXPORT";
  public final static String ATTR_NEST_FILTER_OPERATION = "DMS.NEST_FILTER_EXPORT";
  public final static String KEYWORD_SEARCH_OPERATION = "DMS.ATTR_KEYWORD_SEARCH";
  public final static String ATTR_COMBINE_TIFF_OPERATION = " DMS.COMBINE_TIFF_OPERATION";
  public final static String EXPORT_EXCEL = "DMS.EXPORT_EXCEL";
  public final static String ATTR_REPLACE_OPERATION = "DMS.REPLACE";
  public final static String SEARCH_CURRENT_FOLDER_ONLY = "DMS.SEARCH_CURRENT_FOLDER_ONLY";
  public final static String SEARCH_ALL_FOLDERS = "DMS.SEARCH_ALL_FOLDERS";
  public final static String SEARCH_RESULT_ALL = " DMS.SEARCH_RESULT_ALL";
  public final static String SEARCH_RESULT_RESET = " DMS.SEARCH_RESULT_RESET";
  public final static String SEARCH_EDIT_CRITERIA = " DMS.SEARCH_EDIT_CRITERIA";

  /** The constans which used for scanned in document operation */
  public final static String SCAN_DOCUMENT_NAME_AUTO_GEN = "SCAN.NAME_IN_AUTO_GEN";
  public final static String SCAN_DOCUMENT_NAME_IN_UDF = "SCAN.NAME_IN_UDF";
  public final static String SCAN_FOLDER_CREATION_BY_UDF = "SCAN.FOLDER_CREATE_BY_UDF";
  public final static String SCAN_FOLDER_CREATION_BY_UDF_VALUE = "SCAN.FOLDER_CREATE_BY_UDF_VALUE";
  public final static String SCAN_FOLDER_CREATION_BY_UDF_BY_DATE = "SCAN.FOLDER_CREATE_BY_UDFBY_DATE";
  //public final static String SCAN_FOLDER_CREATION_BY_UDF_BY_LAYER_DETAIL = "SCAN.FOLDER_CREATE_BY_UDF_BY_LAYER_DETAIL";
  public final static String SCAN_FOLDER_CREATION_BY_DATE = "SCAN.FOLDER_CREATE_BY_DATE";
  public final static String SCAN_FOLDER_CREATION_BY_UDF_VALUE_BY_DATE = "SCAN.FOLDER_CREATE_BY_UDF_VALUE_BY_DATE";  
  public final static String SCAN_FOLDER_CREATION_BY_UDF_VALUE_BY_UDF_BY_DATE = "SCAN.FOLDER_CREATE_BY_UDF_VALUE_BY_UDF_BY_DATE";
  public final static String SCAN_FOLDER_CREATION_BY_DPF_NAME = "SCAN.FOLDER_CREATE_BY_DPF_NAME";
  public final static String SCAN_FOLDER_DEMO_DP1_DATE = "SCAN.FOLDER_DEMO_DP1_DATE";
  public final static String SCAN_FOLDER_DEMO_DP1_DP2_DATE = "SCAN.FOLDER_DEMO_DP1_DP2_DATE";
  public final static String SCAN_FOLDER_CREATE_BY_LOGINNAME = "SCAN.FOLDER_CREATE_BY_LOGINNAME";

  /** The constans which used for indicating the state of sending email */
  public final static String EMAIL_SENT = "EMAIL.SENT";
  
  /** The constants which used to operate the recycle bin in DMS.  */
  public final static String RESTORE_DOCUMENT = "DMS.RESTORE";
  public final static String HARD_DELETE_DOCUMENT = "DMS.HARD_DELETE";
  
  /** The constants which used to forward */
  public final static String FORWARD_HOME_PAGE="HOME.PAGE";
  
  /** The constant which is used to determine the use of docFolderPicker */
  public final static String USE_DOC_FOLDER_PICKER = "DMS.DOC_FOLDER";
  
  /** The constant which is used to determine the DefaultProfileSetting's order */
  public final static String DEFAULT_PROFILE_SETTING_ASC = "1,2";
  public final static String DEFAULT_PROFILE_SETTING_DESC = "2,1";
  
  /** The contant which is used to determine the display doc type */
  public final static String DISPLAY_DOC_TYPE="DMS.DISPLAY_DOC_TYPE";
  
  public final static String LIST_DOCUMENT_CURSOR_MAP = "LIST_DOCUMENT_CURSORMAP";
  
  /** The file system  content store paramter,physic file store path */
  public static final String documentPath = "Document";
  public static final String segment = "segment";  
  
  /** The file name size limit **/
  public static final int UN_LIMIT_LENGTH = 999;
  public static final int DEFAULT_DBC_LIMIT_LENGTH = 20;
  public static final int DEFAULT_SBC_LIMIT_LENGTH = 10;
  
  /** file name length limit **/
  public static final int FILE_NAME_LENGTH_LIMIT = 100;
  
  /** The constant which is used to indicate the permission string of dmsDocument*/
  public final static String DMS_PERMISSION_ALLOW_READ = "R";//PERMISSION OF ALLOW READ
  public final static String DMS_PERMISSION_ALLOW_CREATE_FOLDER = "F";//PERMISSION OF ALLOW CREATE FOLDER
  public final static String DMS_PERMISSION_ALLOW_CREATE_DOCUMENT = "I";//PERMISSION OF ALLOW CREATE DOCUMENT
  public final static String DMS_PERMISSION_ALLOW_SET_ALERT = "A";//PERMISSION OF ALLOW SET ALERT
  public final static String DMS_PERMISSION_ALLOW_EDIT_INDEX = "E";//PERMISSION OF ALLOW EDIT INDEX
  public final static String DMS_PERMISSION_ALLOW_RENAME = "N";//PERMISSION OF ALLOW RENAME
  public final static String DMS_PERMISSION_ALLOW_UPDATE_DOCUMENT = "T";//PERMISSION OF ALLOW UPDATE DOCUMENT
  public final static String DMS_PERMISSION_ALLOW_COPY = "C";//PERMISSION OF ALLOW COPY
  public final static String DMS_PERMISSION_ALLOW_MOVE = "M";//PERMISSION OF ALLOW MOVE
  public final static String DMS_PERMISSION_ALLOW_DELETE = "D";//PERMISSION OF ALLOW DELETE
  public final static String DMS_PERMISSION_ALLOW_RELATIONSHIP = "H";//PERMISSION OF ALLOW RELATIONSHIP
  public final static String DMS_PERMISSION_ALLOW_LIST_VERSION = "Z";//PERMISSION OF ALLOW LIST VERSION
  public final static String DMS_PERMISSION_ALLOW_INVITATION = "V";//PERMISSION OF ALLOW INVITATION
  public final static String DMS_PERMISSION_ALLOW_SEND_EMAIL = "L";//PERMISSION OF ALLOW SEND EMAIL
  public final static String DMS_PERMISSION_ALLOW_DISCUSSION = "U";//PERMISSION OF ALLOW DISCUSSION
  public final static String DMS_PERMISSION_ALLOW_ACCESS_CONTROL = "S";//PERMISSION OF ALLOW ACCESS CONTROL
  public final static String DMS_PERMISSION_ALLOW_AUDIT_TRAIL = "B";//PERMISSION OF ALLOW AUDIT TRAIL
  
  public final static String DMS_PERMISSION_DENY_READ = "r";//PERMISSION OF DENY READ
  public final static String DMS_PERMISSION_DENY_CREATE_FOLDER = "f";//PERMISSION OF DENY CREATE FOLDER
  public final static String DMS_PERMISSION_DENY_CREATE_DOCUMENT = "i";//PERMISSION OF DENY CREATE DOCUMENT
  public final static String DMS_PERMISSION_DENY_SET_ALERT = "a";//PERMISSION OF DENY SET ALERT
  public final static String DMS_PERMISSION_DENY_EDIT_INDEX = "e";//PERMISSION OF DENY EDIT INDEX
  public final static String DMS_PERMISSION_DENY_RENAME = "n";//PERMISSION OF DENY RENAME
  public final static String DMS_PERMISSION_DENY_UPDATE_DOCUMENT = "t";//PERMISSION OF DENY UPDATE DOCUMENT
  public final static String DMS_PERMISSION_DENY_COPY = "c";//PERMISSION OF DENY COPY
  public final static String DMS_PERMISSION_DENY_MOVE = "m";//PERMISSION OF DENY MOVE
  public final static String DMS_PERMISSION_DENY_DELETE = "d";//PERMISSION OF DENY DELETE
  public final static String DMS_PERMISSION_DENY_RELATIONSHIP = "h";//PERMISSION OF DENY RELATIONSHIP
  public final static String DMS_PERMISSION_DENY_LIST_VERSION = "z";//PERMISSION OF DENY LIST VERSION
  public final static String DMS_PERMISSION_DENY_INVITATION = "v";//PERMISSION OF DENY INVITATION
  public final static String DMS_PERMISSION_DENY_SEND_EMAIL = "l";//PERMISSION OF DENY SEND EMAIL
  public final static String DMS_PERMISSION_DENY_DISCUSSION = "u";//PERMISSION OF DENY DISCUSSION
  public final static String DMS_PERMISSION_DENY_ACCESS_CONTROL = "s";//PERMISSION OF DENY ACCESS CONTROL
  public final static String DMS_PERMISSION_DENY_AUDIT_TRAIL = "b";//PERMISSION OF DENY AUDIT TRAIL

}
